using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApp14
{
    class Program
    {/*编写一个程序，用以接收用户输入的两个浮点型的数值，一个值表示用户想要存放在银行账户中的余额，另一个值表示用户想要从银行账户中提取的金额。
实现存取款功能，
用户功能选择：1、存款，2、取款
取款时：
当用户想要提取的金额大于余额时，请手动抛出一个ArgumentOutOfRangeException 参数超出范围的异常，异常信息可以写“取款金额大于余额，请重新输入”
，如此以确保取款金额始终不大于当前余额。
操作结束，打印输出余额是多少。
最后再添加catch一般异常 Exception，使得数据类型转换的异常也能被捕获到。*/
        static double sum = 10000.00;
        static void Main(string[] args)
        {
            Console.WriteLine("请选择：1、存款，2、取款");
            int key = int.Parse(Console.ReadLine());
            switch (key)
            {
                case 1:
                    SaveMoney();
                    break;
                case 2:
                    GetMoney();
                    break;
                default:
                    break;
            }
            Console.ReadKey();
        }
        private static void SaveMoney()
        {
            Console.WriteLine("输入存款金额：");
            int temp = int.Parse(Console.ReadLine());
            sum += temp;
            Console.WriteLine($"当前余额{sum}");
        }
        private static void GetMoney()
        {
            while (true)
            {
                int money = 0;
                try
                {
                    Console.WriteLine("输入提取金额：");
                    money = int.Parse(Console.ReadLine());
                    if (money > sum)
                    {
                        throw new ArgumentOutOfRangeException();
                    }
                }
                catch (ArgumentOutOfRangeException)
                {
                    Console.WriteLine("取款金额大于余额请重新输入");
                    continue;
                }
                catch (Exception)
                {
                    Console.WriteLine("Exception");
                }
                Console.WriteLine("余额：" + (sum - money));
                break;
            }
        }
    }
}